﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace libfinancialdata
{
	/// <summary>
	/// quotes for one kind of datasource
	/// </summary>
	public class QuoteTree
	{
		public class Level1
		{
			float bidPx;
			int bidSize;
			float askPx;
			int askSize;
		}

		public class Level2
		{
			public class Level2Unit
			{
				float price;
				int size;
			}

			SortedSet<Level2Unit> ayBid = new SortedSet<Level2Unit>();
			SortedSet<Level2Unit> ayAsk = new SortedSet<Level2Unit>();
		}

		public class Timesale
		{
			public class TimesaleUnit
			{
				int time;
				float px;
				int size;
			}

			SortedSet<TimesaleUnit> ayTs = new SortedSet<TimesaleUnit>();
		}

		public class SymbolNode
		{
			Level1 lev1 = new Level1();
			Level2 lev2 = new Level2();
			Timesale ts = new Timesale();
		}

		public QuoteTree()
		{
			SortedList<string, SymbolNode> nodes = new SortedList<string, SymbolNode>();
		}
	}
}
